.sevena .shape-container {
    position: absolute;
    top: calc(50% - 4em);
    left: calc(50% - 4em);
    animation: move-right 6s infinite cubic-bezier(.37,.55,.49,.67);
}
.sevena .shape {
    position: relative;
    top: auto;
    left: auto;
    border-radius: 50%;
    animation: bounce 6s infinite linear;
}
@keyframes move-right {
    0% {
        opacity: 1;
        transform: translateX(-20em);
    }
    80% {
        opacity: 1;
    }
    90%, 100% {
        opacity: 0;
        transform: translateX(20em);
    }
}
@keyframes bounce {
    0% {
        transform: translateY(-8em);
        animation-timing-function: cubic-bezier(.51,.01,.79,.02);
    }
    15% {
        transform: translateY(8em);
        animation-timing-function: cubic-bezier(.19,1,.7,1);
    }
    25% {
        transform: translateY(-4em);
        animation-timing-function: cubic-bezier(.51,.01,.79,.02);
    } 
    32.5% {
        transform: translateY(8em);
        animation-timing-function: cubic-bezier(.19,1,.7,1);
    } 
    40% {
        transform: translateY(0em);
        animation-timing-function: cubic-bezier(.51,.01,.79,.02);
    }  
    45% {
        transform: translateY(8em);
        animation-timing-function: cubic-bezier(.19,1,.7,1);
    } 
    50% {
        transform: translateY(3em);
        animation-timing-function: cubic-bezier(.51,.01,.79,.02);
    }  
    56% {
        transform: translateY(8em);
        animation-timing-function: cubic-bezier(.19,1,.7,1);
    } 
    60% {
        transform: translateY(6em);
        animation-timing-function: cubic-bezier(.51,.01,.79,.02);
    } 
    64% {
        transform: translateY(8em);
        animation-timing-function: cubic-bezier(.19,1,.7,1);
    } 
    66% {
        transform: translateY(7.5em);
        animation-timing-function: cubic-bezier(.51,.01,.79,.02);
    } 
    70%, 100% {
        transform: translateY(8em);
        animation-timing-function: cubic-bezier(.19,1,.7,1);
    } 
}